/*
	有n个海盗，得到了m个金币。他们决定将之瓜分。分的方法是站成一排，从1号到n号海盗依次提出方案。
	如果提出的方案得到的支持人数比例超过Q%(0<=Q<100)，那么就通过方案，进行分配，提出方案的海盗也有投票权。
	否则就把提出方案的人扔到海里喂鲨鱼。
	海盗都是精明的，他们能够分析出如何最大化自己的利益。

	海盗是贪婪的，总是选择更大的利益。

	海盗是邪恶的，如果利益相同，更愿意杀人。

	输入n,m,Q，问第一个人最多可能得到多少金币。如果必死无疑，输出-1.

	n<=10000, m<=1000000000

	样例解析：

	当有一个人的时候，他能够拿到所有的100个金币。

	当有两个人的时候，后一个人永远不会同意前一人的方案，即必死无疑，等于-1。

	当有三个人的时候，第一人选择自己拿走100个，其他人不给。此时第二人如果不支持，就必死，故一定会支持。

	当有四、五个人的时候，分配方案如下：

	1个人：100
	2个人：100  -1
	3个人：  0   0 100
	4个人：  1   1   0  98
	5个人：  2   0   1   0  97
 */

#ifdef _MSC_VER
#define _CRT_SECURE_NO_WARNINGS
#endif
#if defined(_WIN32) && !defined(__cplusplus)
#define inline __inline
#endif


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAX_PIRATE_NUM 10000

#define max(a,b)    (((a) > (b)) ? (a) : (b))
#define min(a,b)    (((a) < (b)) ? (a) : (b))
 //
 //static inline int cmp(const void *a, const void *b)
 //{
 //	return  *(int*)a - *(int*)b;
 //}


int AddPirate(int coins[MAX_PIRATE_NUM], int pirateNum, int coinsMaxNum, int percent)
{
	int leastSupportNum = (pirateNum + 1) * percent / 100 - 1 + 1; // 减去自己；因支持率需要大于百分比，所以再+1
	leastSupportNum = max(leastSupportNum, 0);

	int tempCoins[MAX_PIRATE_NUM];
	memcpy(tempCoins, coins, pirateNum * sizeof(int));
	// qsort(tempCoins, pirateNum, sizeof(int), cmp);
	int sum = 0;
	for (int i = 0; i < leastSupportNum; ++i)
	{
		tempCoins[i] += 1;
		sum += tempCoins[i];
	}
	if (sum <= coinsMaxNum)
	{
		int result = coinsMaxNum - sum;
		coins[pirateNum] = result;
		if (leastSupportNum > 0) memcpy(&coins[pirateNum - leastSupportNum], tempCoins, leastSupportNum * sizeof(int));
		if (pirateNum > leastSupportNum) memset(coins, 0, (pirateNum - leastSupportNum) * sizeof(int));
		if(coins[pirateNum] < coins[pirateNum - 1])
		{
			for (int i = pirateNum; i > 0; --i)
			{
				if (coins[i] < coins[i - 1])
				{
					int temp = coins[i];
					coins[i] = coins[i - 1];
					coins[i - 1] = temp;
				}
			}
		}
		return result;
	}
	else
	{
		for (int i = pirateNum; i > 0; --i)
		{
			coins[i] = coins[i - 1];
		}
		// memcpy(&coins[1], coins, pirateNum * sizeof(int));
		coins[0] = -1;
		return -1;
	}
}

int coins[MAX_PIRATE_NUM + 10];

int main()
{
	int n, m, Q; // 有n个海盗，得到了m个金币
	scanf("%d%d%d", &n, &m, &Q);
	coins[0] = m;

	int result = coins[0];
	for (int i = 1; i < n; ++i)
	{
		result = AddPirate(coins, i, m, Q);
	}
	printf("%d\n", result);
	return 0;
}
